Object identification and inventory management

ABSTRACT

A method/apparatus for identifying an object based on a pattern of structural features located in a particular region wherein the pattern comprises at least one fingerprint feature. The region may be recognized and used to identify the object. A first feature vector (FV) may be extracted from a first image of the pattern and may be mapped to an object identifier. To authenticate the object, a second FV may be extracted from a second image of the same region. The FVs may be compared and difference(s) determined. A match correlation value (MCV) may be calculated based on the difference(s). The difference(s) may be dampened if associated with expected wear and tear reducing the impact of the difference(s) on the MCV. The differences may be enhanced if associated with changes that are not explainable as wear and tear increasing the impact of the difference(s) on the MCV.

RELATED PATENTS

This application claims priority to U.S. Provisional Patent ApplicationNo. 61/535,084, entitled “WEAPON IDENTIFICATION AND INVENTORYMANAGEMENT,” filed Sep. 15, 2011 which is incorporated herein by thisreference in its entirety.

TECHNICAL FIELD

This disclosure describes a system for object identification andinventory management utilizing “fingerprinting” technology.

BACKGROUND

Currently, an object may be tracked and/or inventoried by using a uniquemarking system. Objects may be physically marked with a unique serialnumber. The serial number may be engraved on the object and/or may beprinted or engraved on a tag and affixed to the object by any of avariety of means. The serial number may be obscured purposely orinadvertently by physical damage and/or by loss of the tag. For thepurposes of authenticating, tracking and inventorying an object anobscured or lost serial number may be ineffective.

Marking certain objects would damage or destroy the value of the object.Art work, gemstones, and collector-grade coins are examples. Identifyingor certifying information may be obtained concerning such objects but ifthey are attached or otherwise physically associated with the object,they are subject to getting lost or being altered. If identifying orcertifying information is stored separately from the object, the entireidentification/certification process must be performed again if theobject is lost and later recovered or its chain of control is otherwisecompromised.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts an example of a system for object identification andinventory management.

FIG. 2 depicts an example of an object for identification and inventorymanagement.

FIG. 3 depicts an example of an object for identification and inventorymanagement.

FIG. 4 a depicts an example of a high resolution image captured forobject identification and inventory management.

FIG. 4 b depicts an example of a high resolution image captured forobject identification and inventory management.

FIG. 4 c depicts an example of a high resolution image captured forobject identification and inventory management.

FIG. 4 d depicts an example of a high resolution image captured forobject identification and inventory management.

FIG. 4 e depicts an example of a feature vector including numericalvalues representing fingerprint features associated with a highresolution image for object identification and inventory management.

FIG. 5 a depicts an example of a high resolution image captured forobject identification and inventory management.

FIG. 5 b depicts an example of a high resolution image captured forobject identification and inventory management.

FIG. 5 c depicts an example of a high resolution image captured forobject identification and inventory management.

FIG. 5 d depicts an example of a high resolution image captured forobject identification and inventory management.

FIG. 5 e depicts an example of a feature vector including numericalvalues representing fingerprint features associated with a highresolution image for object identification and inventory management.

FIG. 6 depicts a table showing differences between two feature vectors.

FIG. 7 depicts an example of a process for object identification andinventory management.

FIG. 8 depicts an example of a process for object identification andinventory management.

DESCRIPTION OF EXAMPLES Summary

Disclosed is a system for identification, tracking and/or inventorymanagement of one or more objects (e.g., a weapon, a coin, a gem, adocument, an animal, or the like, or combinations thereof). In anexample, an object, such as a weapon, may be identified by generating afeature vector associated with a specific physical region of the weapon.An image of the physical region may be captured using a high-resolutionimaging device. The physical region may be identified according to aproximity to or offset from one or more physical features of the object.In a first instance (such as when the weapon is issued), image dataassociated with the captured image may processed to identify one or morefingerprint features and to extract a first feature vector based on thefingerprint features. A “fingerprint feature” is a feature of the objectthat is innate to the object itself (the way human fingerprints are), aresult of the manufacturing process, a result of external processes, orof any other random or pseudo random process. The first feature vectormay be associated with an object identifier. The first feature vectorand identifier may be recorded in a secure file or location. In a secondinstance, the physical region of a purportedly same object may again becaptured using a high-resolution imaging device and a second featurevector extracted. The object identifier may be used to retrieve therecord of the associated first feature vector. The first feature vectorand the second feature vector may be compared to determine whether theobject associated with the first feature vector is the same objectcorresponding to the second feature vector. To determine if the secondfeature vector and the first feature vector are sufficiently similar toestablish within a particular confidence level that they both came fromthe same object, difference values between the second feature vector andthe first feature vector may be processed to determine the degree ofmatch or mismatch of the feature vectors. The processing of thedifference values may comprise a method to modify the difference valuesto dampen differences that do not contribute to object identificationand to enhance differences that do contribute to object identification.

This application may be exemplified in many different forms and shouldnot be construed as being limited to the examples set forth herein.Several examples of the present application will now be described withreference to the accompanying drawings. The figures listed aboveillustrate various examples of the application and the operation of suchexamples. In the figures, the size of the boxes is not intended torepresent the size of the various physical components. Only those partsof the various units are shown and described which are necessary toconvey an understanding of the examples to those skilled in the art.

The disclosed technology is described with reference to embodimentsinvolving identification and inventory management of weaponry. However,the principles disclosed herein are equally applicable to identificationand inventory management of a variety of objects characterized bydistinguishable physical features for example, coins, gems, paperdocuments, animals, artwork, and the like or combinations thereof. Thephysical features may be observable with the naked eye and/or bemicroscopic in scale. Thus, various other examples of the disclosedtechnology are also possible and practical.

Additional aspects and advantages will be apparent from the followingdetailed description of example embodiments. The illustrated exampleembodiments and features are offered by way of example and notlimitation. Furthermore, the described features, structures, orcharacteristics may be combined in any suitable manner in one or moreexamples.

In general, the methodologies of the present disclosed technology may becarried out using one or more digital processors, for example the typesof microprocessors that are commonly found in mobile telephones, PC's,servers, laptops, Personal Data Assistants (PDAs) and all manner ofdesktop or portable electronic appliances.

In the following description, certain specific details of programming,software modules, user selections, network transactions, databasequeries, database structures, etc., are provided for a thoroughunderstanding of the example embodiments of the disclosed technology.However, those skilled in the art will recognize that the disclosedtechnology can be practiced without one or more of the specific details,or with other methods, components, materials, etc.

The term “recognize” is a term of art used throughout the followingdescription that refers to systems, software and processes that glean or“figure out” information, for example alphanumeric information, fromdigital image data. “Recognition” may include not only characterrecognition, but also relative location of characters, fields, etc.Details are known in other contexts such as mail handling, documentcapture, and object recognition.

FIG. 1 depicts an example of a system 100 configured to identify, trackand/or inventory objects. For simplicity, the following discussiondescribes examples wherein the object is a weapon 114 and system 100 isconfigured for weapon inventory management beginning when a weapon 114is issued through ultimate disposal or surrender of weapon 114.

System 100 may comprise a high-resolution imaging (HRI) system 102and/or a hand-held imaging (HHI) system 104. The imaging systems may beconfigured to capture any of a variety of images including digitalimages, ultrasound images, x-ray images, thermal images, microscopicdigital images, images providing depth and/or topological information,and the like, or any combinations thereof.

HRI 102 may be located at a Central Inventory Control Point (CICP) 150or any location conducive to manufacture, collection, storage,distribution and/or reclamation of weaponry. Weapon 114 may be issued atCICP 150. HRI 102 may be configured to initially identify weapon 114 andassociate the identification information with personnel to whom theweapon 114 is issued.

HHI 104 may be located at a Forward Operating Base 160 that is remotefrom CICP 150. Weapon 114 may be checked at FOB 160 for surrender,disposal, and/or tracking. HHI 104 may be configured to identify weapon114 for authentication and/or to verify that an authorized person is inpossession of and/or surrendering weapon 114. In an example, weapon 114may comprise several parts including a barrel, stock, sights and etc.Each part may be identified and/or cataloged separately and/or a singlepart may represent the entire weapon 114.

In an example, when weapon 114 is issued at CICP 150, HRI 102 maycapture a first image 402 (see, for example FIG. 4 a) of a specificregion 129 of weapon 114 including a structure 124. Region 129 may beidentified as an offset from structure 124. The location of region 129may be known only to the identification system and not to any personnelinvolved in the identification process. In an example, weapon 114 mayhave a unique surface crystal and abrasion structure from itsmanufacture and previous history. The surface crystal and abrasionstructure may form random patterns. In addition, anything stamped intoweapon 114 (e.g. the serial number) may have random imperfections thatare unique to weapon 114, even if the exact same die is used to stampthe next weapon on the assembly line. Further, after weapon 114 hasspent time in the field, it acquires scratches and other imperfectionsthat are also random. Thus, region 129 may include a unique pattern ofcrystals and/or abrasions comprising at least one fingerprint feature.System 100 may extract a first feature vector 134 to store datacorresponding to the at least one fingerprint feature from image data130 associated with the first image 402.

When weapon 114 is checked at FOB 160, HHI 104 may capture a secondimage 502 (see FIG. 5 a) of region 129 and extract a second featurevector 144 from image data 140 associated with the second image 502.First feature vector 134 and second feature vector 144 may be comparedto authenticate weapon 114. In other examples, either or both systemsHRI 102 or HHI 104 may be used to extract the first and/or secondfeature vectors at issuance or when weapon 114 is checked for surrender,disposal and/or tracking anywhere and at any time and claimed subjectmatter is not limited in this regard.

In an example, HRI 102 may comprise an imaging device 108, anon-specular illumination system 110, and/or a mount 112 to hold weapon114 in place. HRI 102 may be configured with specialized opticalrecognition software to identify structure 124 to locate region 129 ofweapon 114. In another example, structure 124 and/or region 129 may belocated by a user, manually. Weapon 114 may be positioned on HRI 102 insuch a way as to facilitate imaging of region 129. Structure 124 may bea serial number and/or any other distinguishable physical feature ofweapon 114 (e.g., front or rear sight, barrel, muzzle, trigger, safetylatch, model stamp, or the like, or any combinations thereof). HRI 102may capture first image 402 of region 129. Image 402 may show elementsof a grain surface within region 129 proximate structure 124 and/orimperfections in the surface and/or imperfections in the structure 124,itself. With respect to FIG. 1, structure 124 is the stamped serialnumber. In an example embodiment, system 100 may be configured torecognize the serial number from first image 402 and may use an ASCIIstring for that serial number as a database index referring to weapon114 in inventory control database 126. Through this recognition (e.g. ofthe weapon's serial number) the claimed identity of an object such asweapon 114 may be established. In alternative embodiments, the claimedidentity may be entered by a user or captured from a tag or other itemnot part of the object.

In an example, HRI 102 may be configured to generate image data 130associated with image 402. HRI 102 may include a local processor toprocess image data 130. Image data 130 may be processed by HRI 102 togenerate first feature vector 134. Processing image data 130 maycomprise identifying fingerprint features 127 on a surface of weapon 114within region 129 and expressing the fingerprint features as one or morevalues to generate first feature vector 134. HRI 102 may be configuredto store image data 130 and/or first feature vector 134 in inventorycontrol database 126 in communication with HRI 102. Image data 130and/or first feature vector 134 may be encrypted. In another example,HRI 102 may include a remote computer 118 configured to process imagedata 130 to extract first feature vector 134. Computer 118 may storeimage data 130 and/or first feature vector 134 in inventory controldatabase 126. In another example, inventory control database 126 may bestored in a memory component of HRI 102.

In an example, HRI 102 may be configured to receive and/or generateadditional data 132 to be entered into inventory control database 126 inassociation with image data 130 and/or first feature vector 134. Theadditional data may include data identifying a person to whom weapon 114is being issued, a serial number, a time and/or date stamp, geographicallocation information, weapon 114 status (e.g., condition, age, wear,parts missing, and the like), or the like and any combinations thereof.In an example, data to be entered into inventory control database 126may be secured by any of a variety of data security techniques, such asby encrypting.

The above are performed when the weapon is first cataloged. The sameimaging and recognition system may be used later when the weapon isreceived back from an FOB 160 for ultimate disposal. At that pointanother high-resolution image of the identifying region may beextracted, the serial number may be recognized or otherwise identified,the feature vector 134 may be extracted, and comparison may be madebetween the cataloged feature vector and the newly-captured one todetermine the degree of certainty that this is the original weapon. Inaddition, this system may also allow for manual comparison of theidentifying region images created at issue and at disposal.

Referring still to FIG. 1, in an example, weapon 114 may be surrenderedor otherwise returned to a site that is remote from the location of HRI102 such as an FOB 160. FOB 160 may not have access to technologicalcapabilities available at CICP 150. An HHI 104 may be a portablehandheld imaging device comprising at least one lens 120, a handle 122,actuator button(s) 128 and/or illumination source(s) 125. HHI 104 may beavailable at FOB 160. If weapon 114 is returned to or checked at FOB160, weapon 114 may be authenticated with HHI 104. HHI 104 may beconfigured with specialized software to locate region 129 of weapon 114including structure 124 (e.g., the serial number). HHI 104 may beconfigured to capture a second image 502 of region 129 and to extract asecond feature vector 144 from second image data 140. Second featurevector 144 may comprise at least one value representing fingerprintfeature 127. HHI 104 may comprise a memory for storing image data 140associated with image 502 and/or a processing device for processing theimage data 140. In another example, HHI 104 may communicate the imagedata 140 associated with image 502 to computer 118 for processing.Computer 118 may generate second feature vector 144 and/or may storefeature vector 144 and image data 130 in inventory control database 126for processing at a later time. In another example, inventory controldatabase 126 may be stored in a memory component of HHI 104.

In an example, weapon 114 may be identified in inventory controldatabase 126 according to the serial number marking on weapon 114. HHI104 may be configured to recognize the serial number or the serialnumber may be entered by other means. HHI 104 may access inventorycontrol database 126 using the serial number to look up a stored firstfeature vector 134. HHI 104 may access first feature vector 134 fromdatabase 126 according to any of a variety of other associations, suchas, by serial number, assignment to a particular person, description, orcolor code, and the like, or any combinations thereof.

HHI 104 may be configured to compare first feature vector 134 and secondfeature vector 144 to authenticate weapon 114. HHI 104 may authenticateweapon 114 by determining whether first feature vector 134 and secondfeature vector 144 match to a predetermined identification certaintylevel. The match may be determined by the degree of correspondence ofthe patterns (or features extracted from those patterns) in the firstfeature vector 134 and the second feature vector 144. If a match issufficiently close, weapon 114 may be verified as authentic. Thecomparison of first feature vector 134 and second feature vector 144 maydampen or enhance differences in the first and second feature vectorsdue to natural causes such as wear and tear and/or corrosion. Forexample, region 129 of which both images 402 and 502 are taken is notlikely to suffer less damage once weapon 114 is in the field. However,weapon 114 may suffer more damage. As a result, when comparing the firstfeature vector 134 and the second feature vector 144 the program thatdetermines the certainty of a match between the first and second featurevectors asymmetrically. That is, a scratch (for example) that exists inthe later image but not in the earlier image may add only a small amountof distance between the two feature vectors (and the differences itcreates be dampened), while a scratch in the earlier image that is notin the later contributes a large amount of distance (and its effects beenhanced since there is no reasonable way for a scratch to be removed inthe field). Thus, the comparison may minimize or enhance degradation ofa match confidence level based on such differences. Thus, whensurrendered, weapon 114 may still be authenticated despite changes infingerprint features 127 attributable to natural wear and tear.

In an example, initially HRI 102 may extract several first featurevectors from corresponding images of a plurality of regions of weapon114. Thus, when the weapon 114 is checked-in or surrendered the sameplurality of regions may be imaged by HHI 104 and second feature vectorsmay be extracted from those corresponding images. Comparing theplurality of first feature vectors with the corresponding plurality ofsecond feature vectors may improve match certainty.

Processing of image data 140 may be executed in HHI 104 and/or incomputer 118 and claimed subject matter is not limited in this regard.For example, the extraction and/or comparison of first feature vector134 and second feature vector 144 may be executed by computer 118.Alternatively, first image 402 and second image 502 may be manuallycompared. HHI 104 may store and/or associate image data 140, secondfeature vector 144 and/or an identification certainty level in database126.

HHI 104 may encrypt image data 140, second feature vector 144 and/or anidentification certainty level prior to storing in database 126. Inanother embodiment HRI 102 may be configured to authenticate weapon 114.

The identification certainty level associated with a match betweenfeature vectors may vary. For example, a certainty level associated witha match between feature vectors extracted from image data generated bydifferent devices may be lower than a certainty level associated with amatch between feature vectors extracted from image data generated by thesame device.

In an example, HHI 104 may be configured to receive and/or generateadditional data 142 to be entered into inventory control database 126 inassociation with image data 140 and/or second feature vector 144. Theadditional data may include data identifying a person to surrendering orchecking-in weapon 114, the weapon 114 serial number, a time and/or datestamp, geographical location information, weapon 114 status (e.g.,condition, age, wear, parts missing, and the like), or the like and anycombinations thereof.

Weapon 114 may inducted into a control system at the FOB 160 and sentback to the central inventory control point 150 (an armory, arefurbishment point, disposal point, or other centralized location). Anadditional (third) high-resolution image may be taken with the HRI 102described above and comparisons made with the first image. This can bedone if the FOB hand-held system HHI 104 does not have sufficiently highconfidence in a match. In addition, the proposed field system may allowmanual comparison of the old and the new serial number region images foridentification where the automatic system is insufficiently certain. HRI102 may be configured to provide an image with a higher-resolution thanHHI 104. Thus, if a confidence level in a match or non-match is notsufficiently certain, an additional image of region 129 may be capturedby HRI 102 when weapon 114 is surrendered or checked-in in order toimprove the confidence level associated with the match.

In the above examples, system 100 is configured to identify, trackand/or inventory weapon 114. However, system 100 may be configured toidentify, track and/or inventory any of a variety of objects, forexample, Pilot whales, coins and/or gemstones and claimed subject matteris not limited in this regard.

In an example, feature vectors may be used to track pilot whales.Referring now to FIG. 2, pilot whales have a dorsal fin 270 that extendsout of the water and is easy to photograph. The posterior part of thesefins is very thin (the fins are shaped like airfoils) and is very oftendamaged by shark bites 272 in the normal course of life of the pilotwhales. Using a digital camera, an image of the dorsal fin may becaptured. Features along the posterior edge of the fin may be identifiedas fingerprint features. A feature vector comprising representations ofthe fingerprint features may be generated from the digital image data.The feature vector may be associated with an identifier for the pilotwhale (e.g., the whale's “name”) in a database. When an unidentifiedwhale is photographed, the features of its dorsal fin may be extractedand the resulting feature vector may be compared with those in thedatabase. If a sufficiently good match is obtained, the whale may beidentified.

The whale may sustain additional damage to the dorsal fin after theinitial image was collected due to new shark bites and other causes ofwear and tear. In an example, the comparison procedure may usesubtractive features of the fin, thus differences between the featurevectors may be dampened where such differences may be associated withnew shark bites and other natural causes of wear and tear. In otherwords, new bite marks may not strongly degrade the match if older bitemarks are removed due to a deeper new bite. However, if the later finimage has dorsal fin material where the original does not (i.e. it lacksa bite mark where the original had one), the difference between the twofeature vectors values is not dampened. Such a difference that is notattributable to a natural cause may even be amplified thus degrading thematch considerably more than a dampened difference. Therefore, a matchmay not be identified where difference between the feature vectors arenot attributable to natural causes and are thus amplified.

In another embodiment, feature vectors may be used to identify coins.Clearly it is not desirable to inscribe a high-value coin with anidentifying serial number because it may devalue the coin and the sameserial number may be inscribed on a coin of lesser value. Referring nowto FIG. 3, a coin 374 may comprise two random feature types, wear marks376 and/or a crystal pattern 378 in the surface of the coin. In theformer case, prior to cataloging, coin 374 may have been pressed againstother coins in a bag or suffered other marks. Coin 374 may havedifferent microscopic (or near-microscopic) features in the way thesurface crystals of the metal fractured when the coin was struck. Sincethese depend on the alignment of crystal boundaries in the coin blank,and since that alignment is random, these prove a good feature set evenif the coin is cataloged directly after stamping. In addition, no twostampings leave exactly the same image, even two stampings in a row fromthe same die. Because the pattern of wear marks 376 and/or the crystalpattern 378 are random either or both may serve as fingerprint featuresfrom which a feature vector may be calculated and used foridentification. Authentication of coin 374 may be executed by comparinga feature vector known to be an authentic representation of coin 374 toa feature vector to be authenticated. Differences between featurevectors may be minimized where the differences may be attributable tothe effects of natural wear and tear effect. Differences between featurevectors may be magnified where the differences are not attributed to theeffects of natural wear and tear effect.

Similarly, gem stones have an optical or X-ray crystal pattern whichprovides an identifying feature set. Every gem stone is unique and everygem stone has a series of random flaws in its crystal structure. Indeed,even the most perfect and high-value natural stones have an internalcrystal structure that has a great many flaws. The crystal pattern maybe used to generate feature vectors for identification andauthentication.

In an example embodiment, determining whether two objects are really thesame object may depend on a degree of match of their features, notsubstantially on the degree of mismatch. This is true because the randomor pseudo-random fingerprint features on an object that may be used foridentification are subject to modification after the first featurevector is extracted and stored. A weapon, for example, may receive ascratch through part of the critical area, a document may get a coffeestain, a pilot whale may receive a new shark bite in its dorsal fin. Allof these are normal changes that may occur in the course of the life ofthe object. When the second feature vector, extracted after the changesoccur, is compared with the first, the elements of the second vectorthat correspond to the areas associated with the fingerprint featuresthat underwent change may be substantially different from those in thefirst feature vector. These changes, however, do not indicate that thetwo feature vectors were extracted from different objects. The vectorcomparison process, therefore, seeks to dampen the effects of suchchanges.

On the other hand, coffee stains do not disappear, scratches removethemselves, or shark-bitten dorsal fins heal themselves. When there isno natural process that can explain the differences (the apparentdisappearance of a shark bite for example), those differences may beenhanced in comparing the two feature vectors because they focus in ondifferences far more likely to be caused by the feature vectors comingfrom two different objects than from any natural changes in the sameobject.

The purpose of both enhancement and dampening is to stress that, when itcomes to identifying an object it is the areas in the second featurevector that match the areas in the first that are of substantialsignificance. If enough match, the fact that others are substantiallydifferent in an explainable way is not important. Also of substantialsignificance are those areas that are different in ways that are veryunlikely to occur naturally. These differences may be enhanced inimportance because they are strongly indicative that the two vectorscame from different objects. Finally, differences that occur or couldoccur naturally say almost nothing about whether the two feature vectorsdescribe the same object. Those features are dampened in the comparisonof the two feature vectors.

There are many ways to accomplish such dampening, enhancing, anddetermining degree of match (rather than degree of mismatch). Below arethree examples of methods to dampen and/or enhance differences betweenvectors. In each case, two feature vectors are represented, a firstfeature vector extracted from an object first in time or at time ofindexing and a second feature vector extracted later in time or at thetime of identification/verification of the object. In some embodiments,a set comprising a plurality of several such feature vectors may beprocessed for each object. A plurality of feature vectors may each beextracted from images of different structures or regions on the object.In the following example methods, a singular feature vector isdescribed. However, the methods may be applied to all feature vectorswith, for example, their effects simply added together or combined inother ways to get a figure of merit for the entire object.

Assume also for discussion that the “feature vector” is a 5×5 grayscale(levels 0-255) of a region of the object. The vector is a 25-long arrayof numbers, formed by taking the first row of the 5×5 array and makingthat the first five entries in the feature vector, the second rowbecoming the next five and so on.

Method 1: Calculate a new vector whose entries are the squares of thedifferences of the two vectors. Take a pre-determined threshold andcount the number of entries in this resulting vector below thatthreshold. The pre-determined threshold is chosen such that two imagesof the same region on the same object are very likely to match withinthe threshold and two random images are not.

If the number of within-threshold features is above some predeterminednumber (say 10 so that 10 of the 25 regions on the two objects matchvery well) call that a match for the object with the original.

Method 2: Take the two feature vectors as above. Assume the numbers ineach run from 0-255. Assume a match distance (chosen based on experiencein testing this kind of object, for example). As an example, let thatdistance be 4. If the two values match within +/−4, the probability ofthat happening randomly is 8/256 or about 3%. Calculate for each slotthe probability that the two vector values are an accidental match andthen calculate the overall probability that this might be a falsepositive by multiplying those results together. If, for example 10 ofthe vectors match within the range +/−4, there is only a 0.03̂10 chancethe result is random. If it is not random, it must be because the secondvector matches the first to high probability. If the probability of amismatch is sufficiently low, call it a match.

Method 3: Calculate the difference vector as in method 1. Sum theresults. Subtract that result from 25×255×255 (the largest possibledistance vector magnitude). Threshold the result like a normal distancecalculation, so that if the result is low enough it is a match. All ofthese have the same intent: measure degree of match, not degree ofmismatch. Prior to performing such operations it may be preferable toperform enhancement or dampening of features as discussed above. Thereare many other ways to accomplish this besides those mentioned andclaimed subject matter is not limited in this regard.

FIGS. 4 a-4 e depict examples of a first micrograph image 402 and afirst feature vector 134 for generating a first feature vectorassociated with weapon 114. The first micrograph image 402 may be takenwhen weapon 114 is issued, for example, at a central inventory controlpoint 150.

FIG. 4 a depicts an example of first micrograph image 402 focused on aselected region 129 of a metal surface of weapon 114. Selected region129 may be chosen based on a proximity to a particular structure 124 ofweapon 114 such as a serial number. Regions located proximate to otherstructures of weapon 114 may be selected, such as a forward sight orrear sight, and claimed subject matter is not limited in this regard. Asmaller area 404 is highlighted within region 430. Area 404 may includeone or more fingerprint features 127 and may be identified based on anoffset from structure 124 and selected for feature vector extraction.

FIG. 4 b is a detailed view of the highlighted area 404 in FIG. 4 a.

FIG. 4 c is an example of area 404 of image 402 prepared for featurevector extraction. In an example, area 404 may be blurred and/orcontrasted until the average grayscale is 127 out of 255. In an example,a histogram of area 404 may be modified so that the darkest regions arejust barely not saturated black (e.g., having a pixel value of 0), thelightest regions are just barely not saturated white (e.g., having apixel value of 255), and the average threshold value is 127 (i.e.,halfway).

FIG. 4 d depicts area 404 divided into a grid 414 having 56 equalregions. The average grayscale level in each of the 56 regions may beselected as representative features for a fingerprint feature value setof feature vector 134. However, this is merely one example of a methodof preparing an image for feature vector extraction. In another example,a feature vector may be generated from area 404 without modifying thegrayscale and generating a feature vector representing each of thepixels in area 404.

FIG. 4 e depicts an example of first feature vector 134 comprising atable of numerical values of the average grayscale in each of the 56regions of grid 414. First feature vector 134 is merely an example of amethod of extracting a feature vector from an image. There are a varietyof methods of extracting feature vectors known to those of skill in theart and claimed subject matter is not limited in this regard.

FIGS. 5 a-5 e depict examples of a second micrograph image 502 andsecond feature vector 144 associated with a weapon purported to beweapon 114. The second micrograph image 502 may be taken at a FOB 160.

FIG. 5 a depicts an example of a second micrograph image 502 which maybe focused on selected region 129 if imaging weapon 114. Image 502includes a deformation 520 within highlighted area 504. Deformation 520is not visible in image 402. Deformation 520 shows up in image 502 as adark line. Deformation 520 may be an abrasion weapon 114 received in thefield. Image 502 also includes a light portion 522 within highlightedarea 404 that is not visible in image 402. Light area 522 may representa different elevated portion or different pattern of crystal and/orabrasion features from that visible in image 402. Light area 522 may notbe attributable to natural wear and tear a weapon may receive in thefield and may call into question the authenticity of the weaponpurporting to be weapon 114.

FIG. 5 b is a detailed view of the highlighted area 504 in FIG. 5 ashowing deformation 520 and light portion 522.

FIG. 5 c is an example of area 504 prepared for feature extraction. Area504 is prepared in the same way area 404 was prepared for feature vectorextraction and is blurred and/or contrasted until the average grayscaleis 127 out of 255. A histogram of area 504 may be modified so that thedarkest regions are just barely not saturated black (e.g., having apixel value of 0), the lightest regions are just barely not saturatedwhite (e.g., having a pixel value of 255), and the average thresholdvalue is 127 (i.e., halfway).

FIG. 5 d depicts area 504 divided into a grid 514 having 56 equalregions, as was area 404 in FIG. 4 d. The 56 regions may comprisefingerprint features based on grayscale. The average grayscale level inmost of the 56 regions match the average grayscale in correspondingregions of area 404 in FIG. 4 d with the exception of the regionschanged by the deformation 520 and light portion 522. Regions 540 willhave a lower grayscale value than the corresponding regions in FIG. 4 ddue to an overall darkening effect caused by the deformation 520.Regions 550 will have a higher grayscale value due to an overalllightening effect caused by light portion 522.

FIG. 5 e depicts an example of second feature vector 144 comprising atable of numerical values representing fingerprint features. The valuesare of the average grayscale in each of the 56 regions of grid 514.Regions 540 have a lower numerical value than corresponding regions 440in first feature vector 134 because deformation 520 darkened theseregions in area 504 lowering the grayscale values. Similarly, regions550 have higher numerical values than corresponding regions in 450 infirst feature vector 134 because the light portion 522 lightened theseregions in area 504 increasing the grayscale values.

FIG. 6 is a table 610 comprising a difference vector showing thedifference between first feature vector 134 and second feature vector144 wherein differences attributable to normal wear and tear aredampened and differences that are not attributable to normal wear andtear are enhanced.

In an example, feature vector 134 was extracted first in time so featurevector 144 may be subtracted from feature vector 410 to render thedifference shown in table 610. In an example, based on observation orother data, it may be determined that a positive difference such as infields 640 may correlate to effects of normal wear and tear on weapon114. Thus, positive differences between feature vector 410 and featurevector 510 may be dampened to reduce the effect a positive differencehas on a match correlation value in determining a match between featurevector 410 and feature vector 510. For example, dampening may comprisedividing by 10 each positive value by 10 giving field 640 values of 1,14.8 and 7.1 respective.

Similarly, it may be determined that negative differences (due toaverage lightening of an area in image 502) are not likely to havearisen naturally due to normal wear and tear of weapon 114 and may bepresent because the weapon returned is not the same weapon issued.Lighter area 522 may result in higher grayscale values in FIG. 502 thancorresponding regions in image 402 giving a negative difference betweenfirst feature vector 410 and second feature vector 510. Negativedifferences may not be dampened and may even be enhanced to accentuatethe difference between feature vectors not related to natural causes. Inan example, enhancing the differences may comprise simply multiplyingthe absolute value of any negative values in the difference vector 600by 10 giving field 650 values of 580, 1120, 1320 and 1220 respective.

Difference vector 600 may be used to derive a match correlation betweenfeature vector 134 and feature vector 144 to authenticate purportedweapon 114. In an example, a match correlation value may be a sum of theenhanced and dampened difference values. Thus, negative differences mayshift a correlation value more than positive differences of the samemagnitude.

In an example, a match between first feature vector 134 and secondfeature vector 144 may be determined based on a magnitude of acorrelation value compared to a pre-determine threshold correlationvalue. In other embodiments, a match may be determined by a variety ofcomparison processes and claimed subject matter is not limited in thisregard. In an example, if a match correlation value is within apredetermined confidence threshold value range then a match betweenfirst and second feature vectors may be declared and the purportedweapon 114 may be authenticated as the genuine weapon 114.

FIG. 7 depicts an example of a process 700 for generating a featurevector for authenticating an object. In an example, process 700 maycomprise leveraging randomly-occurring physical features of an object.The features may be microscopic in scale or may be visible to the nakedeye. Such features may comprise, for example, cracks in surfacematerial, a crystalline pattern, a pattern of fibers, a bleed pattern, apattern of fabrication irregularities and the like, or any combinationsthereof. The randomly-occurring features may include fingerprintfeatures from which values may be derived and stored in a featurevector. The feature vector may then be associated with the object.

In an example, process 700 may begin at operation 702, where a structure(see structure 124 in FIG. 1) of the object may be identified. Such astructure may comprise a variety of physical formations on a surface ofthe object, such as, a stamped marking, a crystalline structure, arecess, an outcropping, a component, a part, an ink deposit, a tear, anedge, and the like or combinations thereof.

At operation 704, a region of the object may be identified. In anexample, the location of the region may be based on offset from thestructure. The region (see region 129 in FIG. 1) may comprisefingerprint features (e.g., see fingerprint features 127 in FIG. 1). Thefingerprint features may be proximate to the structure.

At operation 706, an image of the region identified on the object may becaptured using a imaging system (e.g., HRI 102 or HHI 104). Such animaging system may be, for example, a digital camera, microscope, anelectron microscope, a scanner, a thermal camera, a telescope, anultrasound imaging device, or the like, or any combinations thereof.Such an imaging system may be fixed and/or portable and claimed subjectmatter is not limited in this regard.

At operation 708, image data associated with the captured image may begenerated.

At operation 710, image data may be processed to identify fingerprintfeatures in the captured imaged. The fingerprint features may beidentified based on proximity to the structure.

At operation 712, fingerprint features may processed to generate afeature vector.

At operation 714, map an object identifier to the image data and/or theone or more feature vectors in a database. In another embodiment, astructure and region may also be mapped to the object in the database.

FIG. 8 depicts an example of an authentication process 800 foridentifying and verifying an identity an object. In an example,authentication process 800 may comprise comparing a first feature vectorand a second feature vector generated according to process 700 describedabove. The first feature vector may be generated at a first time and thesecond feature vector may be generated at a later second time. Anasymmetrical comparison model may be executed to compare the two featurevectors to compensate for changes to the object that are likely to havebeen sustained due to normal wear and tear. Thus, such changes may notsubstantially degrade a match if it can be determined that the change isdue to normal wear. Such a feature recognition system may reduce alikelihood of a false negative match. Such a feature recognition systemmay be configured to determine which feature vector was derived from alater in time image in order to properly dampen the effects of normalwear and tear on the object.

In an example, authentication process 800 may begin at operation 802,where a first feature vector may be generated from an image of aselected region of an object including random features comprising atleast one fingerprint feature suitable for extracting a feature vector.The random features may be proximate a distinguishable structure of theobject. The first feature vector may be stored in a database associatedwith an object identifier.

At operation 804, a second feature vector may be generated from a secondimage of the selected region. Importantly, exactly what the feature setfrom which the feature vectors are derived is not relevant so long asthere is sufficient information in the resulting feature vector to tellhow similar or dissimilar the original images were. Any feature set willdo provided it meets that criterion.

At operation 806, the first feature vector may be accessed from thedatabase and identified as first in time. The second feature vector maybe identified as second in time. In one embodiment, a date and/or timestamp may be accessed to determine which feature vector was taken firstin time.

At operation 808, compare the feature vectors to determine differencesbetween the first feature vector and the second feature vector.

At operation 810, augment (or modify) differences between the featurevectors. In one embodiment, only differences that exceed a thresholdvalue may be augmented. In an example, augmenting (or modifying)comprises dampening or reducing differences between first feature vectorand second feature vector determined and/or likely to be caused bynormal wear and tear or as a result of decay and/or other natural andunintentional causes. In an example, augmenting comprises enhancing orincreasing differences between first feature vector and second featurevector determined and/or not likely to be caused by normal wear and tearor as a result of decay and/or other natural and unintentional causes.Operation 810 may include either dampening or enhancing differencesbetween vectors or may include both dampening and enhancing differencesbetween vectors.

At operation 812, calculate a match correlation value. In oneembodiment, a match correlation value may be a sum of all of thedifference values in the difference vector. In another embodiment, amatch correlation value may be a sum of selected values exceeding athreshold value. There may be a variety of other ways to calculate amatch correlation value and claimed subject matter is not limited inthis regard.

At operation 814, a determination may be made whether first featurevector and second feature vector match. In an example, a match may beidentified based on a predetermined threshold difference tolerance.

An indication that the objects match or do not match may be displayed inoperation 816.

Many modifications and other embodiments of the disclosed technologywill come to mind to those skilled in the art to which this disclosedtechnology pertains having the benefit of the teachings presented in theforegoing descriptions and the associated drawings. Therefore, it is tobe understood that the disclosed technology is not to be limited to thespecific embodiments disclosed and that modifications and otherembodiments are intended to be included within the scope of the appendedclaims. Although specific terms are employed herein, there are used in ageneric and descriptive sense only and not for purposes of limitation.It will be obvious to those having skill in the art that many changesmay be made to the details of the above-described embodiments withoutdeparting from the underlying principles of the disclosed technology.The scope of the present disclosed technology should, therefore, bedetermined only by the following claims.

1. A machine-implemented method comprising: recognizing a structuralfeature of an object; selecting a region of the object based on thestructural feature; capturing an image of the selected region, whereinthe image has sufficient resolution to show at least one fingerprintfeature; processing image data associated with the fingerprint featureto generate a first feature vector; determining a difference valuebetween the first feature vector and a second feature vector associatedwith an identifier identifying the object; and calculating a matchcorrelation between the first feature vector and the second featurevector.
 2. The method of claim 1 further comprising enhancing thedifference if the difference is not identified as attributable tonatural causes.
 3. The method of claim 1 further comprising dampeningthe difference if the difference is identified as attributable tonatural causes.
 4. The method of claim 1 further comprising declaring amatch if the match correlation value exceeds a threshold confidencevalue.
 5. The method of claim 1 wherein dampening comprises eliminatingdifferences below a threshold value.
 6. The method of claim 1 whereindampening comprises reducing differences below a threshold value.
 7. Themethod of claim 1 wherein enhancing comprises increasing differencesabove a threshold value.
 8. The method of claim 1 wherein thefingerprint feature comprises at least one of: cracks or othernonunifomities in surface material, a crystalline pattern, a pattern offibers, a bleed pattern, a pattern of fabrication irregularities.
 9. Themethod of claim 1 further comprising accessing the second feature vectorfrom a database.
 10. The method of claim 1 further comprising storingthe first feature vector and the image in a database in association withthe object identifier.
 11. The method of claim 1 wherein the fingerprintfeature comprises pattern of features of the object.
 12. The method ofclaim 11 wherein the pattern is a randomly-occurring natural pattern.13. The method of claim 11 wherein the pattern is a result of amanufacturing process.
 14. The method of claim 11 wherein the pattern isan intentional result of a pseudo-random process.
 15. The method ofclaim 1 wherein the object is a weapon, a document, a coin, a gemstone,an animal, an art work, etc.
 16. A machine-implemented methodcomprising: capturing a first digital image of a first selected regionof a first object, wherein the digital image has sufficient resolutionto show an area in the first selected region comprising a first patternof features; processing the first digital image to generate a firstfeature vector comprising data corresponding to the first pattern offeatures of the first object; and storing the first feature vector andthe first digital image in a database in association with a first objectidentifier.
 17. The method of claim 16 and further comprising: capturinga second digital image of a second selected region of a second object,wherein the second digital image has sufficient resolution to show anarea comprising a second pattern of features; processing the seconddigital image to generate a second feature vector comprising datacorresponding to the second pattern of features of the second object;comparing the first feature vector with the second feature vector; anddetermining a confidence that at least one second feature vector featurematches a first feature vector feature stored in the first featurevector.
 18. The method of claim 17 and further comprising: comparing amatch confidence to a predetermined confidence threshold value; and ifthe match confidence exceeds the predetermined confidence thresholdvalue, indicating that the second object is a same one as the firstobject.
 19. The method of claim 17 and further comprising: determining acombined confidence level that the second object is a same one as thefirst object based on comparing multiple second feature vector featuresto features stored in the first feature vector.
 20. The method of claim17 wherein the first pattern of features is a natural product ofmanufacture of the first object or manufacture of a material or pieceincorporated into the first object.
 21. The method of claim 20 whereinthe first pattern of features comprises metal crystal structure defectsor variations, the first feature vector data indicating a location of atleast one defect or variation in a crystalline structure of a metalregion recorded in the digital image data.
 22. The method of claim 20wherein the first pattern of features comprises metal machining ormilling marks presumably resulting from manufacture of a material orpiece incorporated into the first object.
 23. A machine-implementedmethod comprising: capturing a digital image of a selected region on aweapon, wherein the digital image has sufficient resolution to allowrecognition of characters of a serial number of the weapon if the serialnumbers are within the selected region, and also of sufficientresolution to show elements of a grain surface of inter- andintra-character regions of the serial number; recognizing a serialnumber of the weapon from the digital image; processing the digitalimage to locate at least one fingerprint feature; storing dataidentifying the fingerprint feature in a first feature vector; storingthe first feature vector and the digital image in a database inassociation with the serial number.
 24. The method of claim 23 andfurther comprising storing a second digital image in the database inassociation with a matched serial number of the weapon.
 25. The methodof claim 23 wherein at least one of the first digital image, the firstfeature vector, and the weapon serial number is stored in encrypted formin the database.
 26. A machine-implemented method comprising: capturinga digital image of a region including an identifiable structure of aitem; extracting data representing at least one fingerprint feature fromthe digital image; storing fingerprint feature data in a feature vectorin memory; and storing the digital image and the feature vector inassociation with an identifier of the item.
 27. The method of claim 26wherein the digital image is a high-resolution color image, detailedenough to show elements of a grain surface of inter- and intra-characterregions proximate to the identifiable structure.
 28. The method of claim27 wherein the item is a weapon and the identifiable structure is analphanumeric identifier.
 29. The method of claim 28 wherein the weaponis a handgun, rifle or shotgun.
 30. The method of claim 26 wherein thedigital image is detailed enough to reveal variations, imperfections orflaws in the individual characters within an alphanumeric identifier.31. The method of claim 28 wherein the fingerprint feature is a naturalproduct of manufacture of the weapon or manufacture of a material orpiece incorporated into the weapon.
 32. The method of claim 31 whereinthe fingerprint feature comprises metal crystal structure defects orvariations, the fingerprint feature data indicating a location of atleast one defect or variation in a crystalline structure of a metalregion.
 33. The method of claim 26 wherein the fingerprint featurecomprises metal machining or milling marks presumably resulting frommanufacture of a material or piece incorporated into the weapon.
 34. Themethod of claim 26 wherein the region is selected based on apredetermined offset from the identifiable structure on the item andfurther comprising identifying the fingerprint feature based on anoffset from the identifiable feature, and storing data identifying theregion in a fingerprint database in association with an alphanumericidentifier of the item.
 35. The method of claim 26 and furthercomprising encrypting the data identifying said region where thefingerprint feature is located.
 36. The method of claim 29 and furthercomprising transmitting the encrypted digital image and the encryptedfingerprint data and the alphanumeric identifier of the item to aninventory control system in association with one another.